package graph.chart;

import graph.Point;
import graph.chart.point.decorator.PointDecorator;

import java.awt.Color;
import java.awt.GradientPaint;
import java.awt.Graphics;
import java.awt.Graphics2D;


public class BarChart extends GenericChart{
	
	private static final long serialVersionUID = 1L;
	
	@Override
	public void paintChart(Graphics2D g2D){
//		if(this.plotSet != null && plotSet.getPoints() != null){
//			
//			Point startPoint = null;
//			Point endPoint = null;
//			
//			int barWidth = 4;
//			for(Point point : plotSet.getPoints()){
//				Point _point = genericGraph.getScreenCoordinates(point);
//				
//				switch(xAxisArrangement){
//					case Vertical:{
//						Color startColor = Color.WHITE; 
//						Color endColor = Color.BLUE;
//						GradientPaint gradient = new GradientPaint((int)screenCoordinateCenter.getX(), (int)(_point.getY() - barWidth),
//								startColor, (int)_point.getX(), (int)(_point.getY() - barWidth) + 2 * barWidth, endColor); 
//						g2D.setPaint(gradient); 
//						
//						g2D.fillRect((int)screenCoordinateCenter.getX(), (int)(_point.getY() - barWidth), (int)(_point.getX() - screenCoordinateCenter.getX()), 2 * barWidth);
//					};break;
//				}
//				
//				
//				startPoint = endPoint;
//				endPoint = null;
//			}
//			
//			/* X axis mirror - if enabled*/
//			if(plotSet.isxAxisMirrorEnabled()){
//				startPoint = null;
//				endPoint = null;
//				for(Point point : plotSet.getPoints()){
//					Point mirror = new Point(point.getX(), -point.getY());
//					endPoint = genericGraph.getScreenCoordinates(mirror);
//					
//					if(startPoint != null && endPoint != null){
//						g2D.drawLine((int)startPoint.getX(), (int)startPoint.getY(), (int)endPoint.getX(), (int)endPoint.getY());
//					}
//					
//					startPoint = endPoint;
//					endPoint = null;
//				}
//			}
//			
//			/* decorate points */
//			if(plotSet.getPointDecorator() != null){
//				PointDecorator decorator = plotSet.getPointDecorator();
//				for(Point point : plotSet.getPoints()){
//					Point _point = genericGraph.getScreenCoordinates(point);
//					decorator.decorate(g2D, _point);
//					
//					if(plotSet.isxAxisMirrorEnabled()){
//						Point point2 = new Point(point.getX(), -point.getY());
//						_point = genericGraph.getScreenCoordinates(point2);
//						decorator.decorate(g2D, _point);
//					}
//				}
//			}
//		}
	}
}
